/**
 * Copyright:  Copyright (c) 2013
 *
 * @FileName		: DistributionFabricMaterialAction.java
 * @PageName		: 원단재고 
 * @Date			: 오후 3:30:04
 * @LastModifier	: 최경민
 * @LastModifyDate	: 
 * @LastModifier	: 
 * Change history	:
 */
package com.pulp.distribution.action;

import java.util.List;

import javax.servlet.ServletContext;
import javax.servlet.http.HttpServletRequest;

import org.apache.log4j.Logger;
import org.apache.struts2.ServletActionContext;
import org.springframework.web.context.WebApplicationContext;
import org.springframework.web.context.support.WebApplicationContextUtils;

import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;
import com.pulp.distribution.service.DistributionService;
import com.se.model.CommonSessionUser;

/**
 * @author 최경민
 * 
 */
public class DistributionFabricMaterialAction extends ActionSupport {
	private static final long serialVersionUID = -7842345065159835979L;
	private String REQUEST_RESULT = "ok";
	static Logger logger = Logger.getLogger(DistributionFabricMaterialAction.class);

	private String errorCode = "";

	private List fabricMaterialYearList = null;
	private List fabricMaterialMonthList = null;
	private List fabricMaterialDateList = null;

	/**
	 * @return the rEQUEST_RESULT
	 */
	public String getREQUEST_RESULT() {
		return REQUEST_RESULT;
	}

	/**
	 * @param rEQUEST_RESULT the rEQUEST_RESULT to set
	 */
	public void setREQUEST_RESULT(String rEQUEST_RESULT) {
		REQUEST_RESULT = rEQUEST_RESULT;
	}

	/**
	 * @return the logger
	 */
	public static Logger getLogger() {
		return logger;
	}

	/**
	 * @param logger the logger to set
	 */
	public static void setLogger(Logger logger) {
		DistributionFabricMaterialAction.logger = logger;
	}

	/**
	 * @return the errorCode
	 */
	public String getErrorCode() {
		return errorCode;
	}

	/**
	 * @param errorCode the errorCode to set
	 */
	public void setErrorCode(String errorCode) {
		this.errorCode = errorCode;
	}

	/**
	 * @return the fabricMaterialYear
	 */
	public List getFabricMaterialYear() {
		return fabricMaterialYearList;
	}

	/**
	 * @param fabricMaterialYear the fabricMaterialYear to set
	 */
	public void setFabricMaterialYear(List fabricMaterialYear) {
		this.fabricMaterialYearList = fabricMaterialYear;
	}

	/**
	 * @return the fabricMaterialMonth
	 */
	public List getFabricMaterialMonth() {
		return fabricMaterialMonthList;
	}

	/**
	 * @param fabricMaterialMonth the fabricMaterialMonth to set
	 */
	public void setFabricMaterialMonth(List fabricMaterialMonth) {
		this.fabricMaterialMonthList = fabricMaterialMonth;
	}

	/**
	 * @return the fabricMaterialDate
	 */
	public List getFabricMaterialDate() {
		return fabricMaterialDateList;
	}

	/**
	 * @param fabricMaterialDate the fabricMaterialDate to set
	 */
	public void setFabricMaterialDate(List fabricMaterialDate) {
		this.fabricMaterialDateList = fabricMaterialDate;
	}

	public String execute() throws Exception {
		System.out.println("DistributionFabricMaterialAction==================");
		try {

			HttpServletRequest request = (HttpServletRequest) ServletActionContext.getRequest();
			ActionContext context = ActionContext.getContext();
			CommonSessionUser user = (CommonSessionUser) request.getSession().getAttribute(CommonSessionUser.ATTRIBUTE_NAME);
			ServletContext servletContext = ServletActionContext.getServletContext();
			WebApplicationContext wac = WebApplicationContextUtils.getWebApplicationContext(servletContext);
			DistributionService distributionService = (DistributionService) wac.getBean("distributionService");

			fabricMaterialYearList = distributionService.getFabricMaterialYear();
			fabricMaterialMonthList = distributionService.getFabricMaterialMonth();
			fabricMaterialDateList = distributionService.getFabricMaterialDate();

			request.setAttribute("fabricMaterialYearList", fabricMaterialYearList);
			request.setAttribute("fabricMaterialMonthList", fabricMaterialMonthList);
			request.setAttribute("fabricMaterialDateList", fabricMaterialDateList);

		} catch (Exception ex) {
			REQUEST_RESULT = "FAILED";
			ex.printStackTrace();
		}
		return REQUEST_RESULT;
	}
}
